﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using log4net;
using TheBullysStore.Models.ModuloAdministracion.JuntaDirectiva;
using TheBullysStore.Models;
using TheBullysStore.Models.ModuloAdministracion;

namespace TheBullysStore.Controllers.ModuloAdministracion
{
    public class JuntaDirectivaController : Controller
    {
        //
        // GET: /JuntaDirectiva/
        private static ILog log = LogManager.GetLogger(typeof(JuntaDirectivaController));
        JuntaDirectivaFacade juntaDirectivaFacade = new JuntaDirectivaFacade();

        public ActionResult Index()
        {
            return View();
        }
        public ActionResult JuntaDirectiva()
        {
            return View();
        }
        public ActionResult BuscarJuntaDirectiva()
        {
            return View();
        }
        public ActionResult RegistrarJuntaDirectiva()
        {
            return View();
        }

        [HttpPost]
        public JsonResult mantenerJunta(JuntaDirectivaBean juntaDirectiva)
        {
            try
            {
                string mensaje = juntaDirectivaFacade.mantenerJuntaDirectiva(juntaDirectiva); 

                return Json(new { mensaje });
            }
            catch (Exception ex)
            {
                log.Error("Mantener Junta- GET(EXCEPTION):", ex);
                return Json(new { me = "Ocurrió un error al realizar el Mantenimiento" });
            }

        }

        [HttpPost]
        public JsonResult cargarEdificiosR(string verificador)
        {
            try
            {
                List<EdificioR> listaEdificios = juntaDirectivaFacade.listarEdificiosR();
                return Json(new { listaEdificios });
            }
            catch (Exception ex)
            {
                log.Error("Cargar Edificio- GET(EXCEPTION):", ex);
                return Json(new { me = "Ocurrió un error al buscar" });
            }
        }

        [HttpPost]
        public JsonResult buscarPropietarioR(string nombre, string apellido, string edificio)
        {
            try
            {
                List<Propietario> listaConsulta = juntaDirectivaFacade.listarPropietarioR(nombre, apellido, edificio);
                return Json(new { listaConsulta });
            }
            catch (Exception ex)
            {
                log.Error("Buscar Propiedad- GET(EXCEPTION):", ex);
                return Json(new { me = "Ocurrió un error al buscar" });
            }
        }

        [HttpPost]
        public JsonResult buscarJuntaDirectiva(string anio,string id_edificio)
        {
            try
            {
                BusquedaJuntaDirectivaBean juntaDirectiva = juntaDirectivaFacade.buscarJuntaDirectiva(anio,id_edificio);
                return Json(new { juntaDirectiva });
            }
            catch (Exception ex)
            {
                log.Error("Buscar Junta- GET(EXCEPTION):", ex);
                return Json(new { me = "Ocurrió un error al buscar" });
            }
        }
    }
}
